﻿using LPLS.Commons.Enums;
using LPLS.DBEntities.OEEModule.OEEModels.DataStatisticModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LPLS.DBInterface.OEEModule.OEEModels.DataStaticsticModels
{
    public  interface IDeviceDataStatisticService:IDBBaseInterface
    {

        /// <summary>
        /// 获取全部数据统计
        /// </summary>
        /// <returns></returns>
        List<DeviceDataStatistic> GetData();
        /// <summary>
        /// 获取指定设备的时间段内的设备数据统计
        /// </summary>
        /// <param name="starttime"></param>
        /// <param name="endtime"></param>
        /// <param name="deviceid"></param>
        /// <returns></returns>
        List<DeviceDataStatistic> GetDataByDataTime(DateTime starttime,DateTime endtime,Guid deviceid);
        /// <summary>
        /// 获取指定设备的全部数据统计
        /// </summary>
        /// <param name="deviceid"></param>
        /// <returns></returns>
        List<DeviceDataStatistic> GetData(Guid  deviceid);
        /// <summary>
        /// 获取设备在指定时间段内的状态数据统计
        /// </summary>
        /// <param name="Status"></param>
        /// <param name="deviceid"></param>
        /// <param name="starttime"></param>
        /// <param name="endtime"></param>
        /// <returns></returns>
        List<DeviceDataStatistic> GetDataByStatus(StatusEnum Status, Guid  deviceid,DateTime starttime,DateTime endtime);
    }
}
